/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.geaSV.beans;

import com.geaSV.busquedas.busquedaMateriales;
import com.geaSV.busquedas.busquedaProveedor;
import com.geaSV.creaciones.crearMaterial;
import com.geaSV.entities.DepartamentoE;
import com.geaSV.entities.MaterialE;
import com.geaSV.entities.ProveedorE;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;
import javax.faces.model.SelectItem;

/**
 *
 * @author vash
 */
@ManagedBean
@RequestScoped
public final class materialesBean {
private String nombre;
private String uMedida;
private double costo;
private String descripcion;
private List<MaterialE> lstMaterial;
private List<ProveedorE> lstProv=new ArrayList();
private List alstProv=new ArrayList();
private int idProv;

    public int getIdProv() {
        return idProv;
    }

    public void setIdProv(int idProv) {
        this.idProv = idProv;
    }



    public List<ProveedorE> getLstProv() {
        return lstProv;
    }

    public void setLstProv(List<ProveedorE> lstProv) {
        this.lstProv = lstProv;
    }

    public List getAlstProv() {
        return alstProv;
    }

    public void setAlstProv(List alstProv) {
        this.alstProv = alstProv;
    }


    public List<MaterialE> getLstMaterial() {
        return lstMaterial;
    }

    public void setLstMaterial(List<MaterialE> lstMaterial) {
        this.lstMaterial = lstMaterial;
    }


    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public String getuMedida() {
        return uMedida;
    }

    public void setuMedida(String uMedida) {
        this.uMedida = uMedida;
    }

    public double getCosto() {
        return costo;
    }

    public void setCosto(double costo) {
        this.costo = costo;
    }

    public String getDescripcion() {
        return descripcion;
    }

    public void setDescripcion(String descripcion) {
        this.descripcion = descripcion;
    }

    /**
     * Creates a new instance of materialesBean
     */
    public materialesBean() throws SQLException {
        llenarDataTable();
        llenarProveedor();
    }

    public void llenarProveedor() throws SQLException{
    busquedaProveedor bP=new busquedaProveedor();
    this.lstProv=bP.buscarDatosProveedor();
    for (Iterator<ProveedorE> it = lstProv.iterator(); it.hasNext();) {
                ProveedorE p = it.next();
                this.alstProv.add(new SelectItem(p.getId(),p.getNombre()));             
            }
    }
    
    public void crearMaterial() throws SQLException{
    MaterialE M= new MaterialE();
    M.setNombre(nombre);
    M.setuMedida(uMedida);
    M.setCosto(costo);
    M.setDescripcion(descripcion);
    M.setCantidad(0.0);
    M.setIdProv(idProv);
    crearMaterial cM=new crearMaterial();
    String msg=cM.crearMaterial(M);
    if(msg.contains("Error")){
FacesContext.getCurrentInstance().addMessage
          (null, new FacesMessage(FacesMessage.SEVERITY_ERROR,msg, null));
}else{
FacesContext.getCurrentInstance().addMessage
          (null, new FacesMessage(FacesMessage.SEVERITY_INFO,msg, null));
llenarDataTable();
    }
}
    public void llenarDataTable() throws SQLException{
    busquedaMateriales bM= new busquedaMateriales();
    this.lstMaterial=bM.obtenerMateriales();
    }
}
